Concurrent audio streaming to multiple wireless audio output devices

ABSTRACT

A device providing concurrent audio streaming to multiple wireless audio output devices may include at least one processor configured to receive a user selection of at least two paired audio output devices. The at least one processor may be further configured to connect to each of the at least two of the paired audio output devices. The at least one processor may be further configured to synchronize at least one audio output synchronization parameter across each of the at least two of the paired audio output devices. The at least one processor may be further configured to concurrently stream a respective audio stream to each of the at least two of the paired audio output devices.

TECHNICAL FIELD

The present description relates generally to audio streaming, includingconcurrent audio streaming to multiple wireless audio output devices.

BACKGROUND

Users may wirelessly stream audio from an electronic device, such as aphone, to a wireless audio output device, such as a wireless headset,wireless headphones, wireless earbuds, and the like. For example, a usermay stream music from their phone to their wireless audio output device,and/or a user may stream incoming audio for a communication session,such as a telephone call, to their wireless audio output device.

BRIEF DESCRIPTION OF THE DRAWINGS

Certain features of the subject technology are set forth in the appendedclaims. However, for purpose of explanation, several embodiments of thesubject technology are set forth in the following figures.

FIG. 1 illustrates an example network environment for concurrent audiostreaming to multiple wireless audio output devices in accordance withone or more implementations.

FIG. 2 illustrates an example peer-to-peer network environment includingan example electronic device and an example wireless audio output devicein accordance with one or more implementations.

FIG. 3 illustrates a flow diagram of an example process for temporarilypairing with a proximate wireless audio output device for concurrentaudio streaming in accordance with one or more implementations.

FIG. 4 illustrates a flow diagram of an example process of concurrentaudio streaming to multiple wireless audio output devices in accordancewith one or more implementations.

FIG. 5 illustrates a flow diagram of an example process of configuringconcurrent audio streaming via a proximate electronic device that iswirelessly coupled to a proximate wireless audio output device inaccordance with one or more implementations.

FIG. 6 illustrates a flow diagram of an example process of facilitatinga temporary connection between a connected wireless device and aproximate electronic device without a direct pairing of the devices inaccordance with one or more implementations.

FIG. 7 conceptually illustrates an example electronic system with whichaspects of the subject technology may be implemented in accordance withone or more implementations.

DETAILED DESCRIPTION

The detailed description set forth below is intended as a description ofvarious configurations of the subject technology and is not intended torepresent the only configurations in which the subject technology can bepracticed. The appended drawings are incorporated herein and constitutea part of the detailed description. The detailed description includesspecific details for the purpose of providing a thorough understandingof the subject technology. However, the subject technology is notlimited to the specific details set forth herein and can be practicedusing one or more other implementations. In one or more implementations,structures and components are shown in block diagram form in order toavoid obscuring the concepts of the subject technology.

A user streaming audio from an electronic device, such as a mobile phoneor a television, to a wireless audio output device, such as theirwireless headset, may wish to concurrently stream audio to anotherproximate wireless audio output device, such as a wirelessheadset/earbuds of a friend, family member, companion, etc. For example,a user streaming, e.g., music or a podcast on a mobile device may wishto concurrently stream the music or podcast to the wireless audio outputdevice of another user for a shared listening experience. Similarly, auser streaming audio corresponding to a movie or other video content maywish to concurrently stream the audio or a variation thereof (e.g., adirector's commentary) to the wireless audio output device of anotheruser for a shared content viewing experience.

The subject system for concurrent audio streaming to multiple wirelessaudio output devices allows a user to, directly or indirectly,temporarily pair their electronic device with a wireless audio outputdevice of another user, such as while the user's electronic device ispaired and connected to their own wireless audio output device. Forexample, the user's electronic device may directly temporarily pair withanother user's wireless audio output device.

In one or more implementations, when the other user's wireless audiooutput device is connected to the other user's electronic device, suchas the other user's mobile phone, the user's electronic device mayindirectly temporarily pair with the other user's wireless audio outputdevice via the other user's electronic device. For example the otheruser's electronic device may perform a temporary pairing with the otheruser's wireless audio output device to generate pairing information tobe used for the temporary connection between the user's electronicdevice and the other user's wireless audio output device. The otheruser's electronic device may provide the temporary pairing informationto the user's electronic device, such as via a secure channel.

After directly or indirectly temporarily pairing, the user's electronicdevice can automatically connect to the wireless audio output device ofthe other user and stream audio to the wireless audio output device ofthe other user, e.g., while concurrently streaming audio to their ownwireless audio output device. The electronic device may independentlycontrol the volume of each of the audio streams, and/or mayindependently control the content of each of the audio streams. In oneor more implementations, the electronic device may utilize a separateprofile for each of the wireless audio output devices (e.g., separateadvanced audio distribution profiles (A2DP)).

In one or more implementations, the audio streams being concurrentlystreamed to the wireless audio output devices may be the same audiocontent, e.g., the same music, in which case the user's electronicdevice may synchronize one or more audio output synchronizationparameters (e.g., a jitter buffer depth) across the wireless audiooutput devices, such that the audio output by each the wireless audiooutput devices is substantially synchronized.

The pairing of the user's device to the other user's wireless audiooutput device may be referred to as ‘temporary’ because after the otheruser's wireless audio output device disconnects from the user'selectronic device, the user's electronic device automatically, andwithout user input, deletes the pairing information (e.g., link key)corresponding to the other user's wireless audio output device, such asafter the expiration of a timeout period. In this manner, the otheruser's wireless audio output device cannot subsequently reconnect to theuser's electronic device without again pairing. In one or moreimplementations, the other user's wireless audio output device also mayautomatically, and without user input, delete the pairing informationcorresponding to the user's electronic device after disconnecting, suchas after the expiration of the timeout period.

For explanatory purposes, the temporary pairing is described withrespect to wireless audio output devices. However, the temporary pairingmay be used to facilitate temporary connections with any wirelessdevices, such as wireless styluses, wireless access control devices,wearable devices, wireless printers, wireless home devices (e.g.,wireless thermostats, etc.), or generally any wireless device for whichaccess and/or control may be temporarily shared by one user with anotheruser.

FIG. 1 illustrates an example network environment 100 for concurrentaudio streaming to multiple wireless audio output devices in accordancewith one or more implementations. Not all of the depicted components maybe used in all implementations, however, and one or more implementationsmay include additional or different components than those shown in thefigure. Variations in the arrangement and type of the components may bemade without departing from the spirit or scope of the claims as setforth herein. Additional components, different components, or fewercomponents may be provided.

The network environment 100 includes one or more electronic devices102A-B, one or more wireless audio output devices 104A-B, a network 106,and a service provider server 108. The network 106 may communicatively(directly or indirectly) couple, for example, any two or more of theelectronic devices 102A-B and/or the service provider server 108. InFIG. 1, the wireless audio output devices 104A-B are illustrated as notbeing directly coupled to the network 106; however, in one or moreimplementations, one or more of the wireless audio output devices 104A-Bmay be directly coupled to the network 106.

The network 106 may be an interconnected network of devices that mayinclude, or may be communicatively coupled to, the Internet. In one ormore implementations, connections over the network 106, may be referredto as wide area network connections, while connections between two ormore of the electronic devices 102A-B and/or the wireless audio outputdevices 104A-B, may be referred to as peer-to-peer connections. Theservice provider server 108 may include one or more server devicesand/or network equipment that facilitates providing one or more servicesto the electronic devices 102A-B over the network 106, such as a securecloud storage service. The service provider server 108 may be, and/ormay include all or part of, the electronic system discussed below withrespect to FIG. 7.

One or more of the electronic devices 102A-B may be, for example, aportable computing device such as a laptop computer, a smartphone, aperipheral device (e.g., a digital camera, headphones), a tablet device,a smart speaker, a set-top box, a content streaming device, a wearabledevice such as a watch, a band, and the like, or any other appropriatedevice that includes one or more wireless interfaces, such as one ormore near-field communication (NFC) radios, WLAN radios, Bluetoothradios, Zigbee radios, cellular radios, and/or other wireless radios. InFIG. 1, by way of example, the electronic devices 102A-B are depicted asmobile phones. One or more of the electronic devices 102A-B may be,and/or may include all or part of, the electronic device discussed belowwith respect to FIG. 2, and/or the electronic system discussed belowwith respect to FIG. 7.

One or more of the wireless audio output devices 104A-B may be, forexample, a wireless headset device, wireless headphones, one or morewireless earbuds, a smart speaker, or generally any device that includesaudio output circuitry and one or more wireless interfaces, such asnear-field communication (NFC) radios, WLAN radios, Bluetooth radios,Zigbee radios, and/or other wireless radios. In FIG. 1, by way ofexample, the wireless audio output device 104A is depicted as a wirelessheadset and the wireless audio output device 104B is depicted as a setof wireless earbuds. One or more of the wireless audio output devices104A-B may be, and/or may include all or part of, the wireless audiooutput device discussed below with respect to FIG. 2, and/or theelectronic system discussed below with respect to FIG. 7.

One or more of the wireless audio output devices 104A-B may be paired,such as via Bluetooth, with one or more of the electronic devices102A-B. The pairing of a wireless audio output device 104A to anelectronic device 102A may involve generating a link key that is sharedbetween the two devices 102A, 104A, which is discussed further belowwith respect to FIG. 2. After the two devices 102A, 104A are pairedtogether, the devices 102A, 104A may automatically form a securepeer-to-peer connection using the link key when located proximate to oneanother, such as within Bluetooth communication range of one another.For example, the devices 102A, 104A may use the link key to generate asession key that is used to secure the connection. However, if thedevices 102A, 104A unpair and/or if the link key is deleted at one ormore of the devices 102A, 104A, the devices 102A, 104A may no longer beable to automatically form a secure peer-to-peer connection unless thepairing process is re-performed. The electronic devices 102A-B maystream audio, such as music, phone calls, and the like, to theirrespective paired and connected wireless audio output devices 104A-B.

In one or more implementations, one or more of the electronic devices102A-B and/or one or more of the wireless audio output devices 104A-Bmay be associated with and/or registered to a same (common) user accountvia the service provider server 108. For example, the electronic device102A and the wireless audio output device 104A may be associated with afirst user account and the electronic device 102B and the wireless audiooutput device 104B may be associated with a second user account. Theservice provider server 108 may allow the electronic devices 102A-B,such as the electronic device 102A to securely store, via a cloudstorage service, pairing information, such as link keys, correspondingto other devices associated with the same user account, such as thewireless audio output device 104A. Other devices associated with theuser account, such as a tablet device [not shown], may be able toretrieve the pairing information for the wireless audio output device104A from the service provider server 108 in order to establish awireless connection with the wireless audio output device 104A.

The subject technology allows an electronic device, such as theelectronic device 102A to concurrently connect to multiple of thewireless audio output devices 104A-B, and concurrently stream audio toeach of the connected wireless audio output devices 104A-B, such as toprovide a shared listening session. For example, the user of theelectronic device 102A may be streaming music from the electronic device102A to the wireless audio output device 104A and the user may wish forthe user of the electronic device 102B to hear the streaming music onthe wireless audio output device 104B.

The subject technology allows the electronic device 102A to temporarilypair with the wireless audio output device 104B, connect to the wirelessaudio output device 104B, and then concurrently stream the audio, e.g.,music, to both of the wireless audio output devices 104A-B. The pairingmay be considered temporary in the sense that the electronic device 102Aand/or the wireless audio output device 104B may automatically, andwithout user input, delete the pairing information after the audiosharing session is complete, such when the devices 102A, 104B do notreconnect for a threshold amount of time. An example process of theelectronic device 102A temporarily pairing with the wireless audiooutput device 104B is discussed further below with respect to FIG. 3.

The subject technology further allows the electronic device 102A toindependently control the content of the respective audio streamprovided to each of multiple wireless audio output devices 104A-B, andto independently control the volume, tone, pitch, bass, and any otheraudio properties of the respective audio stream provided to each of thewireless audio output devices 104A-B. An example process of concurrentaudio streaming from the electronic device 102A to multiple wirelessaudio output devices 104A-B is discussed further below with respect toFIG. 4.

In one or more implementations, if the wireless audio output device 104Bis connected to the electronic device 102B, the electronic device 102Amay indirectly pair with the wireless audio output device 104B via theelectronic device 102B. For example, the electronic device 102B mayperform a pairing process with the wireless audio output device 104B(e.g., on behalf of the electronic device 102A) and the electronicdevice 102B may provide the generated pairing information to theelectronic device 102A. In this manner, the electronic device 102A canconnect and stream audio to the wireless audio output device 104Bwithout having directly paired with the wireless audio output device104B.

An example process of the electronic device 102A configuring concurrentaudio streaming via the electronic device 102B (that is wirelesslycoupled to the wireless audio output device 104B) is discussed furtherbelow with respect to FIG. 5. An example process of the electronicdevice 102B generally facilitating a temporary connection between aconnected wireless device, such as the wireless audio output device104B, and a proximate electronic device, such as the electronic device102A, without a direct pairing of the devices 102A, 104B, is discussedfurther below with respect to FIG. 6.

FIG. 2 illustrates an example peer-to-peer network environment 200including an example electronic device 102A and an example wirelessaudio output device 104A in accordance with one or more implementations.The electronic device 102A is depicted in FIG. 2 for explanatorypurposes; however, one or more of the components of the electronicdevice 102A may also be implemented by the other electronic device 102B.Similarly, the wireless audio output device 104A is depicted in FIG. 2for explanatory purposes; however, one or more of the components of thewireless audio output device 104A may also be implemented by the otherwireless audio output device 104B. Not all of the depicted componentsmay be used in all implementations, however, and one or moreimplementations may include additional or different components thanthose shown in the figure. Variations in the arrangement and type of thecomponents may be made without departing from the spirit or scope of theclaims as set forth herein. Additional components, different components,or fewer components may be provided.

The electronic device 102A may include a host processor 202A, a memory204A, and radio frequency (RF) circuitry 206A. The wireless audio outputdevice may include a host processor 202B, a memory 204A, RF circuitry206B, and a digital signal processor (DSP) 208.

The RF circuitry 206A-B may include one or more antennas and one or moretransceivers for transmitting/receiving RF communications, such as WiFi,Bluetooth, cellular, and the like. In one or more implementations, theRF circuitry 206A of the electronic device 102A may include circuitryfor forming wide area network connections and peer-to-peer connections,such as WiFi, Bluetooth, and/or cellular circuitry, while the RFcircuitry 206B of the wireless audio output device 104A may includeBluetooth, WiFi, and/or other circuitry for forming peer-to-peerconnections.

The host processors 202A-B may include suitable logic, circuitry, and/orcode that enable processing data and/or controlling operations of theelectronic device 102A and the wireless audio output device 104A,respectively. In this regard, the host processors 202A-B may be enabledto provide control signals to various other components of the electronicdevice 102A and the wireless audio output device 104A, respectively.Additionally, the host processors 202A-B may enable implementation of anoperating system or may otherwise execute code to manage operations ofthe electronic device 102A and the wireless audio output device 104A,respectively. The memories 204A-B may include suitable logic, circuitry,and/or code that enable storage of various types of information such asreceived data, generated data (such as link keys), code, and/orconfiguration information. The memories 204A-B may include, for example,random access memory (RAM), read-only memory (ROM), flash, and/ormagnetic storage. The DSP 208 of the wireless audio output device 104Amay include suitable logic, circuitry, and/or code that enableparticular processing.

In one or more implementations, the electronic device 102A may pair withthe wireless audio output device 104A in order to generate pairinginformation that can be used to form a connection, such as apeer-to-peer connection between the devices 102A, 104A. The pairing mayinclude, for example, exchanging communication addresses, such asclassic Bluetooth addresses, and generating a link key. In one or moreimplementations, the link key may be a symmetric key that is used toform a secure connection between the devices 102A, 104A. For example,the devices 102A, 104A may use the link key, e.g. in conjunction withentropy produced by one or both of the devices 102A, 104A, to generate asymmetric session key. The session key may be used by the devices 102A,104A to form the secure connection.

Thus, after pairing the devices 102A, 104A may store the generatedand/or exchanged pairing information, e.g. communication addressesand/or a link key, in the respective memories 204A-B. In this manner,the devices 102A, 104A may automatically, and without user input,connect to each other when in range of communication of the respectiveRF circuitries 206A-B using the respective pairing information. However,if the pairing between the electronic device 102A and the wireless audiooutput device 104A is a temporary pairing, such as for a shared audiosession, the devices 102A, 104A may, automatically and without userinput, delete the respective pairing information from the respectivememories 204A-B after the connection is terminated and a reconnectiondoes not occur for a threshold amount of time. In this manner, thedevices 102A, 104A cannot re-establish a connection without firstre-performing the pairing process and generating new pairinginformation, e.g. a new link key.

In one or more implementations, one or more of the host processors202A-B, the DSP 208, and/or one or more portions thereof, may beimplemented in software (e.g., subroutines and code), may be implementedin hardware (e.g., an Application Specific Integrated Circuit (ASIC), aField Programmable Gate Array (FPGA), a Programmable Logic Device (PLD),a controller, a state machine, gated logic, discrete hardwarecomponents, or any other suitable devices) and/or a combination of both.

FIG. 3 illustrates a flow diagram of an example process 300 fortemporarily pairing with a proximate wireless audio output device forconcurrent audio streaming in accordance with one or moreimplementations. For explanatory purposes, the process 300 is primarilydescribed herein with reference to the electronic device 102A and thewireless audio output devices 104A-B of FIGS. 1-2. However, theelectronic device 102A and the wireless audio output devices 104A-B arepresented as exemplary devices and the operations described herein maybe performed by any suitable devices. Further, for explanatory purposes,the operations of the process 300 are described herein as occurring inserial, or linearly. However, multiple operations of the process 300 mayoccur in parallel, such that they at least partially overlap in time. Inaddition, the operations of the process 300 need not be performed in theorder shown and/or one or more of the operations of the process 300 neednot be performed and/or can be replaced by other operations.

The process 300 begins when an electronic device 102A discovers aproximate wireless audio output device 104B while the electronic device102A is connected to another wireless audio output device 104A (302).For example, the wireless audio output device 104B (and/or theelectronic device 102A) may transmit broadcast packets that indicate acurrent state of the wireless audio output device 104B, such asconnected, in-ear, in-case, and the like. In one or moreimplementations, the electronic device 102A and the wireless audiooutput device 104A may be associated with a first user account, such aswith the service provider server 108, and the wireless audio outputdevice 104B may be associated with a second, different, user account.One or more of the broadcast packets may be received by the electronicdevice 102A, and, based on receipt of the broadcast packets, theelectronic device 102A may discover and/or detect that the wirelessaudio output device 104B is nearby or proximate.

In one or more implementations, the broadcast packets may also indicatewhether the proximate wireless audio output device 104B is capable ofperforming a temporary pairing and/or is otherwise capable ofparticipating in concurrent streaming. As part of the discovery process,the electronic device 102A may also verify, e.g., based on the receivedbroadcast packets, that the proximate wireless audio output device 104Bis capable of participating in concurrent streaming.

Upon discovering the proximate wireless audio output device 104B (302),the electronic device 102A may display an indication that the proximatewireless audio output device 104B is available for concurrent streaming(304). For example, the electronic device 102A may display a pop-upuser-interface element (e.g., a pop-up sheet) and/or a notificationindicating that the wireless audio output device 104B is available forconcurrent audio streaming. In one or more implementations, theelectronic device 102B may provide an audio notification, a hapticnotification, and/or another form of notification, in lieu of and/or inaddition to displaying the indication.

Responsive to displaying the indication (304), the electronic device102A may receive a request, such as from a user, to initiate concurrentaudio streaming with the wireless audio output device 104B and, e.g.,the wireless audio output device 104A that is currently connected to theelectronic device 102A (306). The electronic device 102A may temporarilypair with the wireless audio output device 104B to generate a link key(308). The pairing may be and/or may include, for example, a Bluetoothpairing mechanism, such as secure simple pairing, or generally any formof pairing. For example, user input with respect to the wireless audiooutput device 104B, and/or a case associated with the wireless audiooutput device 104B, such as pressing a button, may be included in thepairing. In one or more implementations, the pairing may also involvethe exchange of additional information, such as communication addressesincluding Bluetooth classic addresses.

The electronic device 102A may then automatically, and without userinput, establish a connection with the proximate wireless audio outputdevice 104B using the link key, and/or based at least in part on thelink key (310). In one or more implementations, when the wireless audiooutput devices 104A-B are connected to the electronic device 102A viaBluetooth connections, the Bluetooth controller of the electronic device102A may maintain a separate connection for each of the wireless audiooutput devices 104A-B. Accordingly, packets can be individuallytransmitted to the wireless audio output devices 104A-B, and one or morelink parameters of the connections can be individually managed and/ormaintained. For example, if an acknowledgment of one or more packets isnot received from the wireless audio output device 104A for a thresholdamount of time, the electronic device 102A may stop waiting for theacknowledgment and transmit packets to the wireless audio output device104B. In this manner, both wireless audio output devices 104A-B are notpenalized if one of the wireless audio output devices 104A-B isexperiencing interference and/or otherwise has a poor connection withthe electronic device 102A.

Furthermore, in the example of Bluetooth connections, the electronicdevice 102A may utilize separate and independent Bluetooth profiles forthe connection with each of the wireless audio output devices 104A-B,such as A2DP, HFP, AVCRP, and the like. In the example of concurrentstreaming audio, the electronic device 102A may utilize a first A2DPprofile for the connection with the wireless audio output device 104Aand a second, separate, A2DP profile for the connection with thewireless audio output device 104B.

After establishing the connection, the electronic device 102A transmitsan indication to the wireless audio output device 104B that the pairingis temporary (312), e.g., that the wireless audio output device 104Bshould perform pre-determined link key maintenance process(es) when theconnection with the electronic device 102A is terminated, as isdiscussed further below. Furthermore, since the pairing is temporary,the electronic device 102A does not store the link key for theconnection with the wireless audio output device 104B in associationwith its user account, e.g., in a cloud storage service provided by theservice provider server 108. However, the electronic device 102A maystore the link key for the connection with the wireless audio outputdevice 104A in the cloud storage service provided by the serviceprovider server 108 since both devices 102A, 104A are associated withthe same user account.

The electronic device 102A may then determine if the same audio contentis being streamed to both of the wireless audio output devices 104A-B.If the same audio content is being streamed to both of the wirelessaudio output devices 104A-B, the electronic device 102A may synchronizeone or more audio output synchronization parameters between the wirelessaudio output devices 104A-B (314). For example, the electronic device102A may synchronize jitter buffer depth across the wireless audiooutput devices 104A-B, such as by setting the jitter buffer depth onboth wireless audio output devices 104A-B to match the largest jitterbuffer depth between the audio output devices 104A-B. The electronicdevice 102A may also synchronize audio-video synchronization parameters,e.g., an audio delay or shift parameter, such as in the instance thatthe concurrently streamed audio corresponds to a video being presentedon the electronic device 102A.

The electronic device 102A may concurrently stream a first audio streamto the proximate wireless audio output device 104B and a second audiostream to the other wireless audio output device 104A (316). Since theconnections are independently maintained/managed by the electronicdevice 102A, the electronic device 102A can independently modify one ormore audio properties of each stream, such as volume, bass, tone, orgenerally any audio property. Similarly, the electronic device 102A canindependently change the audio stream being streamed to each of thewireless audio output devices 104A-B. For example, if users wearing thewireless audio output devices 104A-B are watching video content, such asa movie, the electronic device 102A can stream a first audio stream tothe wireless audio output device 104A, such as an English-language audiotrack, and a second audio stream to the wireless audio output device104B, such as a secondary language audio track, a director's commentary,or the like. However, since in this instance the users are viewing thesame video content, the electronic device 102A may still synchronize oneor more audio output synchronization parameters on the wireless audiooutput devices 104A-B, even though the audio content being streamed toeach of the wireless audio output devices 104A-B differs.

The electronic device 102A may disconnect from the proximate wirelessaudio output device 104B (318). For example, the wireless audio outputdevice 104B and the electronic device 102B may move outside of aconnection range of one another, the wireless audio output device 104Bmay be turned off, may run out of power, or may be placed back in itscase, the electronic device 102A may run out of power, and/or maydisable its wireless functionality (e.g., supporting the connectionbetween the electronic device 102A and the wireless audio output device104B).

Upon disconnecting from the wireless audio output device 104B, theelectronic device 102A initiates a timer (320). The wireless audiooutput device 104B may also initiate a timer on disconnection, inaccordance with the indication of the temporary pairing previouslyprovided by the electronic device 102A. If the wireless audio outputdevice 104B requests to reconnect to the electronic device 102A beforethe timer reaches a timeout value, the electronic device mayautomatically, and without user input: reconnect to the wireless audiooutput device 104B, reset the timer, and/or resume the concurrent audiostreaming.

However, if the electronic device 102A does not receive a reconnectionrequest from the wireless audio output device 104B prior to the timerreaching the timeout value (or the expiration of the timer), theelectronic device 102A, automatically and without user input, deletesthe link key and/or any other stored pairing information correspondingto the wireless audio output device 104B (322). Since, after deletingthe link key and/or any other stored pairing information, the electronicdevice 102A can no longer connect to the wireless audio output device104B without re-pairing, the deletion of the link key may be aneffective unpairing of the electronic device 102A and the wireless audiooutput device 104B.

Similarly, the wireless audio output device 104B, automatically andwithout user input, deletes the link key and/or any other stored pairinginformation pertaining to the electronic device 102A when its timerreaches the timeout value without having reconnected to the electronicdevice 102A. The wireless audio output device 104B may also,automatically and without user input, reconnect to the last electronicdevice it was connected to prior to the temporary connection with theelectronic device 102A, such as the electronic device 102B.

In one or more implementations, if the other wireless audio outputdevice 104A disconnects from the electronic device 102A but the wirelessaudio output device 104B remains connected to the electronic device102A, the electronic device 102A may continue streaming audio to onlythe wireless audio output device 104B until the audio streaming iscompleted or stopped, and/or until a timeout period is reached. Once thestreaming is completed or stopped and/or the timeout period is reached,the electronic device 102A disconnects from the wireless audio outputdevice 104B, initiates the timer (320), and automatically and withoutuser input, deletes the link key and/or any other stored pairinginformation corresponding to the wireless audio output device 104B whena reconnection request is not received from the wireless audio outputdevice 104B prior to the timer reaching the timeout value (322).

In one or more implementations, when the wireless audio output device104B is removed from the concurrent audio streaming via a selector onthe electronic device 102A, for example if a user deselects arepresentation of the wireless audio output device 104B from a userinterface corresponding to the concurrent audio streaming, theelectronic device 102A may disconnect from the wireless audio outputdevice 104B, initiate the timer (320), and automatically and withoutuser input, delete the link key and/or any other stored pairinginformation corresponding to the wireless audio output device 104B whena reconnection request is not received from the wireless audio outputdevice 104B prior to the timer reaching the timeout value (322).

In one or more implementations, if the wireless audio output device 104Bconnects to a different electronic device, such as the electronic device102B, if the wireless audio output device 104B is actively unpaired fromthe electronic device 102A, such as via a user interface, and/or if theelectronic device 102A changes its audio output route, such as by a userselection of a different audio output device, the electronic device 102Aand the wireless audio output device 104A automatically and without userinput delete their respective link keys and any corresponding pairinginformation without initiating the timer. However, in one or moreimplementations, the electronic device 102A and/or the wireless audiooutput device 104A may initiate the timer before deleting the link keyand any corresponding pairing information.

In one or more implementations, the wireless audio output devices 104A-Bmay be connected to the electronic device 102A via different types ofwireless connections. For example, the electronic device 102A may beconnected to the wireless audio output device 104A via a Bluetoothconnection, while connected to the wireless audio output device 104B viaa WiFi Direct connection, a 60 GHz connection, a Wi-Fi Aware connection,or generally any wireless connection. The electronic device 102A mayconcurrently stream audio to the wireless audio output devices 104A-Birrespective of the connection types of the wireless audio outputdevices 104A-B.

FIG. 4 illustrates a flow diagram of an example process 400 ofconcurrent audio streaming to multiple wireless audio output devices inaccordance with one or more implementations. For explanatory purposes,the process 400 is primarily described herein with reference to theelectronic device 102A and the wireless audio output devices 104A-B ofFIGS. 1-2. However, the electronic device 102A and the wireless audiooutput devices 104A-B are presented as exemplary devices and theoperations described herein may be performed by any suitable devices.Further, for explanatory purposes, the operations of the process 400 aredescribed herein as occurring in serial, or linearly. However, multipleoperations of the process 400 may occur in parallel, such that they atleast partially overlap in time. In addition, the operations of theprocess 400 need not be performed in the order shown and/or one or moreof the operations of the process 400 need not be performed and/or can bereplaced by other operations.

The process 400 begins when the electronic device 102A receives a userselection of at least two paired wireless audio output devices 104A-B(402). For example, the electronic device 102A may display a picker orselector interface that can receive user selections of multiple wirelessaudio output devices 104A-B, such as in conjunction with outputting aparticular audio stream. The wireless audio output devices 104A-B may beboth associated with the same user account as the electronic device102A, or one or more of the wireless audio output devices 104A-B may beassociated with a different user account that the electronic device102A. The electronic device 102A may individually connect to each of thewireless audio output devices 104A-B, if not already connected, (404)and may individually configure communication profiles, such as Bluetoothprofiles, with each of the wireless audio output devices 104A-B.

The electronic device 102A may, optionally, synchronize audio outputsynchronization parameters between the wireless audio output devices104A-B (406). For example, the electronic device 102A may request thateach of the wireless audio output devices 104A-B provide its currentparameter configuration, the electronic device 102A may determine one ormore synchronized parameters, and the electronic device 102A maytransmit the one or more synchronized parameters to each of the wirelessaudio output devices 104A-B.

The electronic device 102A may then concurrently stream separate audiostreams, e.g. with the same audio content, to the wireless audio outputdevices 104A-B (408). While performing the concurrent audio streaming,the electronic device 102A may receive an incoming audio communicationsession, such as a telephone call, an audio-video conference call, andthe like (410). The electronic device 102A may provide an audio (and/orhaptic) notification of the incoming audio communication session to eachof the wireless audio output devices 104A-B (412). For example, theelectronic device 102A may mux the audio notification into theindividual audio streams being concurrent streamed to the wireless audiooutput devices 104A-B.

The electronic device 102A may receive a request to receive the audiocommunication session from one of the wireless audio output devices104A-B, such as the wireless audio output device 104A (414). Responsiveto receiving the request, the electronic device 102A streams the audiocommunication session to the one of the wireless audio output devices,such as the wireless audio output device 104A, while continuing tostream the audio stream to the other(s) of the wireless audio outputdevices, such as the wireless audio output device 104B (416). Once theaudio communication session is completed, the electronic device 102A mayresume streaming the audio stream to the wireless audio output device104A. In one or more implementations, if the electronic device 102Areceives a request from both of the wireless audio output devices104A-B, the electronic device 102A streams the audio communication tothe wireless audio output device that transmitted to the request thatwas received first by the electronic device 102A.

In one or more implementations, when the wireless audio output device104A is associated with the same user account as the electronic device102A, and the wireless audio output device 104B is associated with adifferent user account, the electronic device 102A may only provideaudio (and/or haptic) notifications, e.g., of incoming audiocommunications, to the wireless audio output device 104A that isassociated with the same user account as the electronic device 102A.Similarly, if a user wearing the wireless audio output device 104Ainitiates a voice assistant via the wireless audio output device, thevoice assistant responses may only be transmitted to the wireless audiooutput device 104A, e.g., and not to the wireless audio output device104B.

FIG. 5 illustrates a flow diagram of an example process 500 ofconfiguring concurrent audio streaming via a proximate electronic devicethat is wirelessly coupled to a proximate wireless audio output devicein accordance with one or more implementations. For explanatorypurposes, the process 500 is primarily described herein with referenceto the electronic devices 102A-B and the wireless audio output devices104A-B of FIG. 1. However, the electronic devices 102A-B and thewireless audio output devices 104A-B are presented as exemplary devicesand the operations described herein may be performed by any suitabledevices. Further for explanatory purposes, the operations of the process500 are described herein as occurring in serial, or linearly. However,multiple operations of the process 500 may occur in parallel or at leastpartially overlap. In addition, the operations of the process 500 neednot be performed in the order shown and/or one or more of the operationsof the process 500 need not be performed and/or can be replaced by otheroperations.

The process 500 may begin when the electronic device 102A discovers,while connected to the wireless audio output device 104A, a proximateelectronic device 102B that is wirelessly connected to another wirelessaudio output device 104B (502). For example, the electronic device 102Amay detect broadcast packets transmitted by the electronic device 102B,e.g. broadcast packets that indicate that the electronic device 102B iswirelessly connected to the wireless audio output device 104B, and/orthe electronic device 102A may detect/discover the electronic device102B using ultra-wideband ranging, and/or any other discovery mechanism.Upon discovering the proximate electronic device 102B, the electronicdevice 102A may display an indication of the availability of thewireless audio output device 104B, such as via a user interface.

The electronic device 102A may establish a secure peer-to-peerconnection with the proximate electronic device 102B (504), such as uponreceiving a user request to connect to the wireless audio output device104B. For example, the electronic device 102A may establish a secureBluetooth connection, a secure Wi-Fi Aware connection, a secure NFCconnection, or generally any secure connection. In one or moreimplementations, if the electronic devices 102A-B are not located withina threshold distance of each other, one or more of the electronicdevices 102A-B may display an indication for the electronic devices102A-B to be brought closer together. In one or more implementations,the electronic device 102A may negotiate/exchange an encryption key withthe electronic device 102B via an out-of-band channel, such as acommunication/messaging channel that supports end-to-end encryption. Theelectronic devices 102A-B may then use the encryption key to secure thepeer-to-peer connection.

The electronic device 102A may transmit to the electronic device 102B arequest to connect to the other wireless audio output device 104B (506).The request may be transmitted, for example, via the secure peer-to-peerconnection. In one or more implementations, the electronic device 102Bmay receive the request and may display a user interface requesting thatthe user of the electronic device 102B confirms that the electronicdevice 102A can access the wireless audio output device 104B.

If the user confirms that the electronic device 102A can access thewireless audio output device 104B, the electronic device 102B mayestablish connection information with the wireless audio output device104B, e.g., pairing information for the subsequent connection betweenthe electronic device 102A and the wireless audio output device 104B.The connection information may be separate and distinct from theconnection information used by the electronic device 102B to connect tothe wireless audio output device 104B. The connection information, suchas pairing information, and other exchanged parameters are discussedfurther below with respect to FIG. 6. The electronic device 102B maytransmit the connection information to the electronic device 102A, suchas via the secure peer-to-peer connection.

The electronic device 102A receives, from the proximate electronicdevice 102B, the connection information for connecting to the otherwireless audio output device 104B (508), such as via the securepeer-to-peer connection. In one or more implementations, the receivedconnection information may be different from connection information usedby the electronic device 102A to connect to the wireless audio outputdevice 104A. The electronic device 102A connects to the wireless audiooutput device 104B using the connection information (510). Theelectronic device 102A transmits a message to the wireless audio outputdevice 104B indicating that the connection is temporary. In one or moreimplementations, the electronic device 102B may provide an indication tothe wireless audio output device 104B that the connection will betemporary, such as while establishing the pairing information. Theelectronic device 102A may then concurrently stream a first audio streamto the wireless audio output device 104A and a second audio stream tothe other wireless audio output device 104B (512).

The electronic device 102A may disconnect from the other wireless audiooutput device 104B (514). For example, the other wireless audio outputdevice 104B may and/or the electronic device 102A may move out of rangeof each other. Upon the disconnect, the electronic device 102A mayinitiate a timer (516) and may automatically, and without user input,delete the connection information when the other wireless audio outputdevice 104B does not reconnect to the electronic device 102A prior tothe timer reaching a timeout value (518). The wireless audio outputdevice 104B may also initiate a timer and may automatically, and withoutuser input, delete the connection information when the wireless audiooutput device 104B does not reconnect to the electronic device 102Aprior to the timer reaching the timeout value. In one or moreimplementations, the wireless audio output device 104B mayautomatically, and without user input, reconnect to the electronicdevice 102B upon disconnecting from the electronic device 102A.

FIG. 6 illustrates a flow diagram of an example process 600 offacilitating a temporary connection between a connected wireless deviceand a proximate electronic device without a direct pairing of thedevices in accordance with one or more implementations. For explanatorypurposes, the process 600 is primarily described herein with referenceto the electronic devices 102A-B of FIG. 1. However, the electronicdevices 102A-B are presented as exemplary devices and the operationsdescribed herein may be performed by any suitable devices. Further forexplanatory purposes, the operations of the process 600 are describedherein as occurring in serial, or linearly. However, multiple operationsof the process 600 may occur in parallel or at least partially overlap.In addition, the operations of the process 600 need not be performed inthe order shown and/or one or more of the operations of the process 600need not be performed and/or can be replaced by other operations.

The process 600 begins when the electronic device 102A establishes asecure connection with the electronic device 102B, such as a securepeer-to-peer connection (602). As discussed above, the electronic device102A may discover or detect the proximate electronic device 102B, e.g.when the electronic devices 102A-B are within a threshold distance ofeach other, and the electronic devices 102A-B may establish the secureconnection upon discovering and/or detecting one another.

The electronic device 102A may receive, from the proximate electronicdevice 102B, a request to connect to a wireless device connected to theelectronic device 102A (604). For example, the proximate electronicdevice 102B may request to connect to a wireless audio output device104A connected to the electronic device 102A, a wireless stylusconnected to the electronic device 102A, a game controller connected tothe electronic device 102A, or generally any wireless device connectedto the electronic device 102A. In one or more implementations, thewireless device may not be connected to the electronic device 102A atthe time that the request is received; however, the wireless device maybe paired with the electronic device 102A and/or may be within aparticular distance of the electronic device 102A, although notconnected to the electronic device 102A. In one or more implementations,the wireless device may be associated with the user account that isassociated with the electronic device 102A, which may differ from theuser account associated with the electronic device 102B.

The electronic device 102A displays an indication of the request, suchas to a user (606). For example, the electronic device 102A may displaya notification, a pop-up card, or other graphical element(s) indicatingthat the electronic device 102B is requesting to access the wirelessdevice (606). The indication may request that the user of the electronicdevice 102A confirm that the electronic device 102B can access thewireless device. The electronic device 102A may receive userconfirmation of the request (608). For example, a user of the electronicdevice 102A may interact with the displayed indication to provide userconfirmation.

The electronic device 102A may receive a communication address from theproximate electronic device 102B (610). The communication address maycorrespond to the communication address of the electronic device 102B tobe used for the connection with the wireless device, such as a Bluetoothclassic address. The electronic device 102A may generate a link key forthe connection between the electronic device 102B and the wirelessdevice (612). The link key may be separate and distinct from the linkkey used by the electronic device 102A to establish a connection withthe wireless device. In one or more implementations, the electronicdevice 102A may initiate the pairing process with the wireless device onbehalf of, and/or as a proxy of, the electronic device 102B.

The electronic device 102A may transmit the link key, the receivedcommunication address (e.g., received from the electronic device 102B),and an indication that the connection will be temporary, to theconnected wireless device (614), e.g. over the existing connection withthe connected wireless device. The electronic device 102A may transmitthe link key and the communication address of the wireless device to theproximate electronic device 102B (616), such as over the secureconnection. The communication address of the wireless device may be, forexample, a classic Bluetooth address that may be locally stored by theelectronic device 102A. Thus, through the example process 600, theelectronic device 102A is able to allow the electronic device 102B toconnect to the wireless device without having directly paired with thewireless device. In one or more implementations, the electronic device102B may be considered to have indirectly paired with the wirelessdevice via the electronic device 102A.

In one or more implementations, after transmitting the link key and thecommunication address of the wireless device to the proximate electronicdevice 102B, the electronic 102A may terminate the secure connectionwith the proximate electronic device 102B. The wireless device mayautomatically disconnect from the electronic device 102A upon connectingto the electronic device 102B. The electronic device 102A may receive areconnection request from the wireless device (618). The electronicdevice 102A may, automatically and without user input, reconnect to thewireless device using another link key (620), e.g., the link keypreviously used to connect to the wireless device.

FIG. 7 conceptually illustrates an electronic system 700 with which oneor more implementations of the subject technology may be implemented.The electronic system 700 can be, and/or can be a part of, one or moreof the electronic devices 102A-B, the wireless audio output devices104A-B, and/or the server 108 shown in FIG. 1. The electronic system 700may include various types of computer readable media and interfaces forvarious other types of computer readable media. The electronic system700 includes a bus 708, one or more processing unit(s) 712, a systemmemory 704 (and/or buffer), a ROM 710, a permanent storage device 702,an input device interface 714, an output device interface 706, and oneor more network interfaces 716, or subsets and variations thereof.

The bus 708 collectively represents all system, peripheral, and chipsetbuses that communicatively connect the numerous internal devices of theelectronic system 700. In one or more implementations, the bus 708communicatively connects the one or more processing unit(s) 712 with theROM 710, the system memory 704, and the permanent storage device 702.From these various memory units, the one or more processing unit(s) 712retrieves instructions to execute and data to process in order toexecute the processes of the subject disclosure. The one or moreprocessing unit(s) 712 can be a single processor or a multi-coreprocessor in different implementations.

The ROM 710 stores static data and instructions that are needed by theone or more processing unit(s) 712 and other modules of the electronicsystem 700. The permanent storage device 702, on the other hand, may bea read-and-write memory device. The permanent storage device 702 may bea non-volatile memory unit that stores instructions and data even whenthe electronic system 700 is off. In one or more implementations, amass-storage device (such as a magnetic or optical disk and itscorresponding disk drive) may be used as the permanent storage device702.

In one or more implementations, a removable storage device (such as afloppy disk, flash drive, and its corresponding disk drive) may be usedas the permanent storage device 702. Like the permanent storage device702, the system memory 704 may be a read-and-write memory device.However, unlike the permanent storage device 702, the system memory 704may be a volatile read-and-write memory, such as random access memory.The system memory 704 may store any of the instructions and data thatone or more processing unit(s) 712 may need at runtime. In one or moreimplementations, the processes of the subject disclosure are stored inthe system memory 704, the permanent storage device 702, and/or the ROM710. From these various memory units, the one or more processing unit(s)712 retrieves instructions to execute and data to process in order toexecute the processes of one or more implementations.

The bus 708 also connects to the input and output device interfaces 714and 706. The input device interface 714 enables a user to communicateinformation and select commands to the electronic system 700. Inputdevices that may be used with the input device interface 714 mayinclude, for example, alphanumeric keyboards and pointing devices (alsocalled “cursor control devices”). The output device interface 706 mayenable, for example, the display of images generated by electronicsystem 700. Output devices that may be used with the output deviceinterface 706 may include, for example, printers and display devices,such as a liquid crystal display (LCD), a light emitting diode (LED)display, an organic light emitting diode (OLED) display, a flexibledisplay, a flat panel display, a solid state display, a projector, orany other device for outputting information. One or more implementationsmay include devices that function as both input and output devices, suchas a touchscreen. In these implementations, feedback provided to theuser can be any form of sensory feedback, such as visual feedback,auditory feedback, or tactile feedback; and input from the user can bereceived in any form, including acoustic, speech, or tactile input.

Finally, as shown in FIG. 7, the bus 708 also couples the electronicsystem 700 to one or more networks and/or to one or more network nodes,through the one or more network interface(s) 716. In this manner, theelectronic system 700 can be a part of a network of computers (such as aLAN, a wide area network (“WAN”), or an Intranet, or a network ofnetworks, such as the Internet. Any or all components of the electronicsystem 700 can be used in conjunction with the subject disclosure.

As described above, one aspect of the present technology is thegathering and use of data available from specific and legitimate sourcesto improve concurrent audio streaming to multiple wireless audio outputdevices. The present disclosure contemplates that in some instances,this gathered data may include personal information data that uniquelyidentifies or can be used to identify a specific person. Such personalinformation data can include demographic data, location-based data,online identifiers, telephone numbers, email addresses, home addresses,data or records relating to a user's health or level of fitness (e.g.,vital signs measurements, medication information, exercise information),date of birth, or any other personal information.

The present disclosure recognizes that the use of such personalinformation data, in the present technology, can be used to the benefitof users. For example, the personal information data can be used toselect/suggest devices for pairing in accordance with a user'spreferences. Accordingly, use of such personal information data enablesusers to have greater control of the devices selected/suggested forconcurrent audio streaming. Further, other uses for personal informationdata that benefit the user are also contemplated by the presentdisclosure. For instance, health and fitness data may be used, inaccordance with the user's preferences to provide insights into theirgeneral wellness, or may be used as positive feedback to individualsusing technology to pursue wellness goals.

The present disclosure contemplates that those entities responsible forthe collection, analysis, disclosure, transfer, storage, or other use ofsuch personal information data will comply with well-established privacypolicies and/or privacy practices. In particular, such entities would beexpected to implement and consistently apply privacy practices that aregenerally recognized as meeting or exceeding industry or governmentalrequirements for maintaining the privacy of users. Such informationregarding the use of personal data should be prominently and easilyaccessible by users, and should be updated as the collection and/or useof data changes. Personal information from users should be collected forlegitimate uses only. Further, such collection/sharing should occur onlyafter receiving the consent of the users or other legitimate basisspecified in applicable law. Additionally, such entities should considertaking any needed steps for safeguarding and securing access to suchpersonal information data and ensuring that others with access to thepersonal information data adhere to their privacy policies andprocedures. Further, such entities can subject themselves to evaluationby third parties to certify their adherence to widely accepted privacypolicies and practices. In addition, policies and practices should beadapted for the particular types of personal information data beingcollected and/or accessed and adapted to applicable laws and standards,including jurisdiction-specific considerations which may serve to imposea higher standard. For instance, in the US, collection of or access tocertain health data may be governed by federal and/or state laws, suchas the Health Insurance Portability and Accountability Act (HIPAA);whereas health data in other countries may be subject to otherregulations and policies and should be handled accordingly.

Despite the foregoing, the present disclosure also contemplatesembodiments in which users selectively block the use of, or access to,personal information data. That is, the present disclosure contemplatesthat hardware and/or software elements can be provided to prevent orblock access to such personal information data. For example, in the caseof concurrent audio streaming to multiple devices, the presenttechnology can be configured to allow users to select to “opt in” or“opt out” of participation in the collection of personal informationdata during registration for services or anytime thereafter. In additionto providing “opt in” and “opt out” options, the present disclosurecontemplates providing notifications relating to the access or use ofpersonal information. For instance, a user may be notified upondownloading an app that their personal information data will be accessedand then reminded again just before personal information data isaccessed by the app.

Moreover, it is the intent of the present disclosure that personalinformation data should be managed and handled in a way to minimizerisks of unintentional or unauthorized access or use. Risk can beminimized by limiting the collection of data and deleting data once itis no longer needed. In addition, and when applicable, including incertain health related applications, data de-identification can be usedto protect a user's privacy. De-identification may be facilitated, whenappropriate, by removing identifiers, controlling the amount orspecificity of data stored (e.g., collecting location data at city levelrather than at an address level), controlling how data is stored (e.g.,aggregating data across users), and/or other methods such asdifferential privacy.

Therefore, although the present disclosure broadly covers use ofpersonal information data to implement one or more various disclosedembodiments, the present disclosure also contemplates that the variousembodiments can also be implemented without the need for accessing suchpersonal information data. That is, the various embodiments of thepresent technology are not rendered inoperable due to the lack of all ora portion of such personal information data. For example, concurrentaudio streaming to multiple wireless audio output devices can beperformed based on aggregated non-personal information data or a bareminimum amount of personal information, such as the information beinghandled only on the user's device or other non-personal informationavailable.

Implementations within the scope of the present disclosure can bepartially or entirely realized using a tangible computer-readablestorage medium (or multiple tangible computer-readable storage media ofone or more types) encoding one or more instructions. The tangiblecomputer-readable storage medium also can be non-transitory in nature.

The computer-readable storage medium can be any storage medium that canbe read, written, or otherwise accessed by a general purpose or specialpurpose computing device, including any processing electronics and/orprocessing circuitry capable of executing instructions. For example,without limitation, the computer-readable medium can include anyvolatile semiconductor memory, such as RAM, DRAM, SRAM, T-RAM, Z-RAM,and TTRAM. The computer-readable medium also can include anynon-volatile semiconductor memory, such as ROM, PROM, EPROM, EEPROM,NVRAM, flash, nvSRAM, FeRAM, FeTRAM, MRAM, PRAM, CBRAM, SONOS, RRAM,NRAM, racetrack memory, FJG, and Millipede memory.

Further, the computer-readable storage medium can include anynon-semiconductor memory, such as optical disk storage, magnetic diskstorage, magnetic tape, other magnetic storage devices, or any othermedium capable of storing one or more instructions. In one or moreimplementations, the tangible computer-readable storage medium can bedirectly coupled to a computing device, while in other implementations,the tangible computer-readable storage medium can be indirectly coupledto a computing device, e.g., via one or more wired connections, one ormore wireless connections, or any combination thereof.

Instructions can be directly executable or can be used to developexecutable instructions. For example, instructions can be realized asexecutable or non-executable machine code or as instructions in ahigh-level language that can be compiled to produce executable ornon-executable machine code. Further, instructions also can be realizedas or can include data. Computer-executable instructions also can beorganized in any format, including routines, subroutines, programs, datastructures, objects, modules, applications, applets, functions, etc. Asrecognized by those of skill in the art, details including, but notlimited to, the number, structure, sequence, and organization ofinstructions can vary significantly without varying the underlyinglogic, function, processing, and output.

While the above discussion primarily refers to microprocessor ormulti-core processors that execute software, one or more implementationsare performed by one or more integrated circuits, such as ASICs orFPGAs. In one or more implementations, such integrated circuits executeinstructions that are stored on the circuit itself.

Those of skill in the art would appreciate that the various illustrativeblocks, modules, elements, components, methods, and algorithms describedherein may be implemented as electronic hardware, computer software, orcombinations of both. To illustrate this interchangeability of hardwareand software, various illustrative blocks, modules, elements,components, methods, and algorithms have been described above generallyin terms of their functionality. Whether such functionality isimplemented as hardware or software depends upon the particularapplication and design constraints imposed on the overall system.Skilled artisans may implement the described functionality in varyingways for each particular application.

Various components and blocks may be arranged differently (e.g.,arranged in a different order, or partitioned in a different way) allwithout departing from the scope of the subject technology.

It is understood that any specific order or hierarchy of blocks in theprocesses disclosed is an illustration of example approaches. Based upondesign preferences, it is understood that the specific order orhierarchy of blocks in the processes may be rearranged, or that allillustrated blocks be performed. Any of the blocks may be performedsimultaneously. In one or more implementations, multitasking andparallel processing may be advantageous. Moreover, the separation ofvarious system components in the implementations described above shouldnot be understood as requiring such separation in all implementations,and it should be understood that the described program components andsystems can generally be integrated together in a single softwareproduct or packaged into multiple software products.

As used in this specification and any claims of this application, theterms “base station”, “receiver”, “computer”, “server”, “processor”, and“memory” all refer to electronic or other technological devices. Theseterms exclude people or groups of people. For the purposes of thespecification, the terms “display” or “displaying” means displaying onan electronic device.

As used herein, the phrase “at least one of” preceding a series ofitems, with the term “and” or “or” to separate any of the items,modifies the list as a whole, rather than each member of the list (i.e.,each item). The phrase “at least one of” does not require selection ofat least one of each item listed; rather, the phrase allows a meaningthat includes at least one of any one of the items, and/or at least oneof any combination of the items, and/or at least one of each of theitems. By way of example, the phrases “at least one of A, B, and C” or“at least one of A, B, or C” each refer to only A, only B, or only C;any combination of A, B, and C; and/or at least one of each of A, B, andC.

The predicate words “configured to”, “operable to”, and “programmed to”do not imply any particular tangible or intangible modification of asubject, but, rather, are intended to be used interchangeably. In one ormore implementations, a processor configured to monitor and control anoperation or a component may also mean the processor being programmed tomonitor and control the operation or the processor being operable tomonitor and control the operation.

Likewise, a processor configured to execute code can be construed as aprocessor programmed to execute code or operable to execute code.

Phrases such as an aspect, the aspect, another aspect, some aspects, oneor more aspects, an implementation, the implementation, anotherimplementation, some implementations, one or more implementations, anembodiment, the embodiment, another embodiment, some implementations,one or more implementations, a configuration, the configuration, anotherconfiguration, some configurations, one or more configurations, thesubject technology, the disclosure, the present disclosure, othervariations thereof and alike are for convenience and do not imply that adisclosure relating to such phrase(s) is essential to the subjecttechnology or that such disclosure applies to all configurations of thesubject technology. A disclosure relating to such phrase(s) may apply toall configurations, or one or more configurations. A disclosure relatingto such phrase(s) may provide one or more examples. A phrase such as anaspect or some aspects may refer to one or more aspects and vice versa,and this applies similarly to other foregoing phrases.

The word “exemplary” is used herein to mean “serving as an example,instance, or illustration”. Any embodiment described herein as“exemplary” or as an “example” is not necessarily to be construed aspreferred or advantageous over other implementations. Furthermore, tothe extent that the term “include”, “have”, or the like is used in thedescription or the claims, such term is intended to be inclusive in amanner similar to the term “comprise” as “comprise” is interpreted whenemployed as a transitional word in a claim.

All structural and functional equivalents to the elements of the variousaspects described throughout this disclosure that are known or latercome to be known to those of ordinary skill in the art are expresslyincorporated herein by reference and are intended to be encompassed bythe claims. Moreover, nothing disclosed herein is intended to bededicated to the public regardless of whether such disclosure isexplicitly recited in the claims. No claim element is to be construedunder the provisions of 35 U.S.C. § 112(f), unless the element isexpressly recited using the phrase “means for” or, in the case of amethod claim, the element is recited using the phrase “step for”.

The previous description is provided to enable any person skilled in theart to practice the various aspects described herein. Variousmodifications to these aspects will be readily apparent to those skilledin the art, and the generic principles defined herein may be applied toother aspects. Thus, the claims are not intended to be limited to theaspects shown herein, but are to be accorded the full scope consistentwith the language claims, wherein reference to an element in thesingular is not intended to mean “one and only one” unless specificallyso stated, but rather “one or more”. Unless specifically statedotherwise, the term “some” refers to one or more. Pronouns in themasculine (e.g., his) include the feminine and neuter gender (e.g., herand its) and vice versa. Headings and subheadings, if any, are used forconvenience only and do not limit the subject disclosure.

1. A method comprising: discovering a proximate wireless audio outputdevice by an electronic device having a wireless connection with anotherwireless audio output device; receiving, by the electronic device, arequest to initiate concurrent audio streaming with the proximatewireless audio output device and the other wireless audio output device;temporarily pairing, responsive to receiving the request, with theproximate wireless audio output device; and establishing, responsive tothe pairing, another wireless connection with the proximate wirelessaudio output device while maintaining the wireless connection with theother wireless audio output device.
 2. The method of claim 1, furthercomprising: displaying an indication that the proximate wireless audiooutput device is available for concurrent audio streaming, wherein therequest to initiate the concurrent audio streaming with the proximatewireless audio output device and the other wireless audio output deviceis received responsive to displaying the indication.
 3. The method ofclaim 1, wherein establishing, responsive to the pairing, the otherwireless connection to the proximate wireless audio output devicecomprises: synchronizing an audio output parameter across the proximatewireless audio output device and the other wireless audio output device.4. The method of claim 3, wherein the audio output parameter comprises ajitter buffer depth.
 5. The method of claim 1, wherein the wirelessconnection and the other wireless connection comprise Bluetoothconnections, the other wireless connection with the proximate wirelessaudio device utilizes a first Bluetooth profile, and the wirelessconnection with the other wireless audio output device utilizes a secondBluetooth profile that is separate from, and independent of, the firstBluetooth profile.
 6. The method of claim 1, wherein the proximatewireless audio output device is associated with a first user account,and the other wireless audio output device and the electronic device areassociated with a second user account.
 7. The method of claim 6, whereinan audio notification triggered by an event on the electronic device isprovided to the other wireless audio output device but not to theproximate wireless audio output device.
 8. The method of claim 6,further comprising: automatically and without user input, unpairing withthe proximate wireless audio output device after termination of theother wireless connection with the proximate wireless audio outputdevice, wherein the other wireless audio output device remains pairedafter a termination of the wireless connection with the other wirelessaudio output device.
 9. The method of claim 1, further comprising:concurrently streaming a first audio stream to the proximate wirelessaudio output device and a second audio stream to the other wirelessaudio output device.
 10. A device comprising: a memory; and at least oneprocessor configured to: receive a user selection of at least two pairedaudio output devices; connect to each of the at least two of the pairedaudio output devices; synchronize at least one audio outputsynchronization parameter across each of the at least two of the pairedaudio output devices by: requesting that each of the at least two of thepaired audio devices provide a respective current parameterconfiguration, determining the at least one audio output synchronizationparameter for the at least two of the paired audio devices based on therespective current parameter configuration of the at least two of thepaired audio devices, and transmitting the at least one audio outputsynchronization parameter to each of the at least two of the pairedaudio devices; and concurrently stream a respective audio stream to eachof the at least two of the paired audio output devices.
 11. The deviceof claim 10, wherein the respective current parameter configuration ofthe at least two of the paired audio devices comprises a jitter bufferdepth for each of the at least two of the paired audio devices, andwherein the at least one audio output synchronization parametercomprises a jitter buffer depth corresponding to a larger of the jitterbuffer depth for each of the at least two of the paired audio devices.12. The device of claim 10, wherein each respective audio streamcomprises a same audio content.
 13. The device of claim 10, wherein theat least one processor is further configured to receive an incomingcall, and wherein, prior to receipt of the incoming call, eachrespective audio stream comprises different audio content.
 14. Thedevice of claim 10, wherein the at least one processor is furtherconfigured to: independently control a respective volume level of eachrespective audio stream.
 15. The device of claim 10, wherein the atleast one processor is further configured to: receive an incoming audiocommunication; provide a respective notification of the incoming audiocommunication to each of the at least two of the paired audio outputdevices; receive a request to receive the incoming audio communicationfrom one of the at least two of the paired audio output devices; andstream the incoming audio communication to the one of the at least twoof the paired audio output devices in lieu of the respective audiostream for the one of the at least two of the paired audio outputdevices.
 16. The device of claim 15, wherein the at least one processoris further configured to: continue to stream each respective audiostream to each other paired audio output device of the at least two ofthe paired audio output devices while streaming the incoming audiocommunication to the one of the at least two of the paired audio outputdevices.
 17. A system comprising: an electronic device wirelesslyconnected to a wireless audio output device, the electronic devicecomprising a memory and at least one processor configured to: discover aproximate electronic device that is wirelessly coupled to anotherwireless audio output device; establish a peer-to-peer connection withthe proximate electronic device; receive, over the peer-to-peerconnection, connection information for temporarily connecting to theother wireless audio output device; connect to the other wireless audiooutput device based at least in part on the received connectioninformation; and stream a first audio stream to the wireless audiooutput device while concurrently streaming a second audio stream to theother wireless audio output device.
 18. The system of claim 17, whereinthe at least one processor of the electronic device is furtherconfigured to: synchronize audio output of the wireless audio outputdevice and the other wireless audio output device by adjusting at leastone audio output synchronization parameter of at least one of thewireless audio output device or the other wireless audio output device.19. The system of claim 17, further comprising the other wireless audiodevice, the other wireless audio device configured to: receive theconnection information from the proximate electronic device, theconnection information being different from another connectioninformation used by the other wireless audio output device to connect tothe proximate electronic device; connect to the electronic device basedat least in part on the connection information, wherein connecting tothe electronic device causes a disconnection from the proximateelectronic device; and delete the connection information and reconnectto the proximate electronic device based at least in part on the otherconnection information after disconnecting from the electronic device.20. The system of claim 17, wherein the at least one processor of theelectronic device is further configured to: delete the receivedconnection information after disconnecting from the wireless audiooutput device.